package com.itheima.utils;

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;

import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;

/**
 * company: www.abc.com
 * Author: 29746
 * Create Data: 2020/11/13
 */
public class FileUtils {

    // Endpoint以杭州为例，其它Region请按实际情况填写。
   private static final String endpoint = "https://oss-cn-shanghai.aliyuncs.com";
    // 阿里云主账号AccessKey拥有所有API的访问权限，风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维，请登录RAM控制台创建RAM账号。
    private static final String accessKeyId = "LTAI4GB2EZmi2Hs54ersSpwY";
    private static final String accessKeySecret = "L6L7MRMLf5CQrxRagzzbkUA5k08NEw";
    private static final String bucketName = "shanghaiheima115";
    public static String upload(String fileName, InputStream inputStream){

        // <yourObjectName>上传文件到OSS时需要指定包含文件后缀在内的完整路径，例如abc/efg/123.jpg。
        String objectName = UUID.randomUUID()+fileName.substring(fileName.lastIndexOf("."));

        // 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

        // 上传文件到指定的存储空间（bucketName）并将其保存为指定的文件名称（objectName）。
        ossClient.putObject(bucketName,objectName,inputStream);
        try {
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

// 关闭OSSClient。
        ossClient.shutdown();
        return objectName;
    }

    public static  void delete(String path){
        //创建ossclient实例，1.连接oss
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
        //上传文件到指定存储空间（buckeName）并将其保存为指定的文件名称（objectName）2.操作
        ossClient.deleteObject(bucketName,path);
        //关闭ossclient。3.关闭连接
        ossClient.shutdown();
    }



}
